The wording of rules can be improved in two ways:
Sometimes a boolean attribute will be correct but very awkward to read and answer. In this sort of situation, it is often advisable to use an interpretative rule to make the attribute more coherent. This involves creating another rule which "wraps" the lower level rule.
The following example shows a rule which uses a string comparison with a text variable "the type of pet":
the pet is a lizard if
the type of pet = "lizard"
This type of rule structure is commonly used to transform a variable comparison to a boolean attribute that can be reused throughout the rulebase in the source rules. The variable can be used to infer a number of separate boolean attributes, one for each possible value (for instance, the pet is a dog, the pet is a cat etc). A drop-down list can then be used in the interview to collect the value of the variable from the user.
Intermediate attributes in Oracle Policy Modeling format can be added instead of using grouping operators, as demonstrated in the following example.
Before (using grouping operators):
the claimant is eligible for living allowances if
the claimant is living alone and
any
all
the claimant is aged over 65 and
the claimant is a man
or
all
the claimant is aged over 60 and
the claimant is a woman
After (grouping operators replaced with new attributes):
the claimant is eligible for living allowances if
the claimant is living alone and
the claimant satisfies the age criteria
the claimant satisfies the male age criteria
the claimant is aged over 65 and
the claimant is a man
or
the claimant satisfies the female age criteria
the claimant is aged over 60 and
the claimant is a woman
Addition of these intermediate attributes is highly recommended to improve understanding of decision reports and to assist in debugging.